﻿@model FlyingCircusWebIS.ViewModels.CupomVM.CupomIndexVM

@{
    ViewBag.Title = "Cupons";
}
@section css{
    @Styles.Render("~/Content/css/formulario")
}

<div id="outraspg">
    <h1>Cupons</h1>

    @using (Html.BeginForm("Index", "Cupom", FormMethod.Get))
    {        
        <div class="conteudodivs">
            <div class="filtro-listagem-geral">
                <dl class="filtro-listagem">
                    <dd>
                        @Html.LabelFor(m => m.Nome)
                        @Html.TextBoxFor(m => m.Nome)

                        @Html.LabelFor(m => m.Ativo)
                        @Html.DropDownListFor(m => m.Ativo, Model.ItensAtivo)
                    </dd>
                </dl>
                <input class="enviar" type="submit" value="Filtrar" />
            </div>
        </div>

    }

    <br />
    <div class="line">
        <img class="no-border" src="../Imagens/adicionar.png" /><a href="@Url.Action("Form")"> Novo</a>
    </div>

    @{
        if (Model.TotalRegistros > 0)
        {
        <table class="listagem">
            <tr>
                <th>Nome</th>
                <th>Desconto</th>
                <th>Ativo</th>
                <th></th>
                <th></th>
                <th></th>
                <th></th>
            </tr>
            @for (int i = 0; i < Model.Registros.Count; i++)
            {
                <tr>
                    <td>@Model.Registros[i].NomeCupom</td>
                    <td>@Model.Registros[i].DescontoValorFormatado</td>
                    <td>@Model.Registros[i].FlagAtivoFormatada</td>
                    <td class="opcoes">
                        @if (Model.Registros[i].FlagAtivo.Equals("S"))
                        {
                            <img class="no-border" src="../Imagens/code.png" /><a href="#" onclick="MostrarCodCupom('@Model.Registros[i].NomeCupom', '@Model.Registros[i].CodCupom');"> Código</a>
                        }
                    </td>

                    <td class="opcoes2">
                        <img class="no-border" src="../Imagens/editar.png" />@Html.ActionLink(" Editar", "Form", new { codigo = Model.Registros[i].CodCupom })
                    </td>
                    <td class="opcoes">
                        @if (Model.Registros[i].FlagAtivo.Equals("S"))
                        {
                            <img class="no-border" src="../Imagens/desativar.png" /><a href="#" onclick="DesativarRegistro('@Model.Registros[i].CodCupom');"> Desativar</a>
                        }
                        else
                        {
                            <img class="no-border" src="../Imagens/ativar.png" /><a href="#" onclick="AtivarRegistro('@Model.Registros[i].CodCupom');"> Ativar</a>
                        }
                    </td>
                    <td class="opcoes">
                        <img class="no-border" src="../Imagens/excluir.png" /><a href="#" onclick="RemoverRegistro('@Model.Registros[i].CodCupom');"> Remover</a>
                    </td>
                </tr>
            }
        </table>
        
        
        }
        else
        {
        <p>Não existe nenhum registro cadastrado.</p>
        }
    
    
    }
</div>

@section scripts 
{
    <script type="text/javascript">

        // Armazena o id/codigo do registro a ser ativado/desativado
        var codRegistro;

        // Trata o evento onclick da opção de desativar um registro
        function DesativarRegistro(codigo) {
            codRegistro = codigo;
            JSMostraDialogConfirmacao("Desativar", "Deseja desativar o registro?", true, RequisitaDesativacaoRegServidor);

        }

        // Trata o evento onclick da opção de ativar um registro
        function AtivarRegistro(codigo) {
            codRegistro = codigo;
            JSMostraDialogConfirmacao("Ativar", "Deseja ativar o registro?", true, RequisitaAtivarRegServidor);
        }

        // Trata o evento onclick da opção de remover um registro
        function RemoverRegistro(codigo) {
            codRegistro = codigo;
            JSMostraDialogConfirmacao("Remover", "Deseja remover o registro?", true, RequisitaRemoverRegServidor);

        }

        // Efetua uma requisição ao servidor pedindo para remover um registro
        function RequisitaRemoverRegServidor() {
            $.post('@Url.Action("Remover")', { codigo: codRegistro }, function (data) {
                // Mostra uma notificação de acordo com a resposta do servidor
                if (!data.Erro)
                    JSMostraNotificacaoSucesso(data.Mensagem, false, function () { location.reload(); });
                else
                    JSMostraNotificacaoErro(data.Mensagem, true);
            });
        }

        // Efetua uma requisição ao servidor pedindo para desativar um registro
        function RequisitaDesativacaoRegServidor() {
            $.post('@Url.Action("Desativar")', { codigo: codRegistro }, function (data) {
                // Mostra uma notificação de acordo com a resposta do servidor
                if (!data.Erro)
                    JSMostraNotificacaoSucesso(data.Mensagem, false, function () { location.reload(); });
                else
                    JSMostraNotificacaoErro(data.Mensagem, true);
            });
        }


        // Efetua uma requisição ao servidor pedindo para ativar um registro
        function RequisitaAtivarRegServidor() {
            $.post('@Url.Action("Ativar")', { codigo: codRegistro }, function (data) {
                // Mostra uma notificação de acordo com a resposta do servidor
                if (!data.Erro)
                    JSMostraNotificacaoSucesso(data.Mensagem, false, function () { location.reload(); });
                else
                    JSMostraNotificacaoErro(data.Mensagem, true);
            });
        }


        // Mostra o código do cupom numa modal-message
        function MostrarCodCupom(nome, codigo) {
            var mensagem = "<p>Promoção: " + nome + "</p>";
            mensagem += "<p>Código: <strong>" + codigo + "</strong></p>";
            JSMostraDialog("Cupom", mensagem, true);
        }

        $(document).ready(function () {
            $(".gerenciar").toggleClass("current");
        });
    </script>
}
